exports.add_discounts_activity = function (req, res) {

    //获取restful参数
    var bodyParams = req.routeInfo.bodyParams;
    //最终结果
    var resultData = {};

    var new_oaid = 0;

    var completeCount = 0;

    var successCount = 0;

    var cash_coupon_id = 0;
    var o_address ="";

    //任务流创建
    async.waterfall([
        //1.权限验证
        /*function (cb) {
            P.permissionValidation(req, res, [CORE_APIConfig.coreAPI.addOrganizationActivity], function () {
                cb()
            });
        },*/
            // 查询机构地址
            function (cb) {
                R.SEND_HTTP(
                    req,
                    {
                        url: CORE_APIConfig.coreAPI.searchOrganization + "/o_id/"+ bodyParams.oid,
                        method: 'POST',
                        data: {
                            fields: ["o_address"].join(",")
                        }
                    },
                    function (err, data) {
                        //判断是否有错误信息
                        if (err) {
                            return cb(err, data);
                        }
                        o_address = data.data[0].o_address;
                        if(o_address == ''){
                        	o_address = '暂无'
                        }
                        cb();
                    }
                );

            },

            //添加活动基本信息
            function (cb) {
                R.SEND_HTTP(
                    req,
                    {
                        url: CORE_APIConfig.coreAPI.addOrganizationActivity,
                        method: 'POST',
                        data: {
                            oa_title        : bodyParams.activity_name,
                            oa_type         : "5",
                            oa_oid          : bodyParams.oid,
                            oa_start_time   : bodyParams.activity_start_time,
                            oa_end_time     : bodyParams.activity_end_time,
                            oa_explain      : bodyParams.activity_note,
                            oa_title_image  : bodyParams.activity_image,
                            oa_category_text:bodyParams.activity_category == undefined ? "" : bodyParams.activity_category,
                            oa_title_image_text: bodyParams.oa_title_image_text == undefined ? "" : bodyParams.oa_title_image_text,
                            oa_title_image_text_style: bodyParams.oa_title_image_text_style == undefined ? "" : bodyParams.oa_title_image_text_style,
                            oa_skin_id: bodyParams.oa_skin_id == undefined ? "" : bodyParams.oa_skin_id,
                            oa_music_id: bodyParams.oa_music_id == undefined ? "" : bodyParams.oa_music_id,
                            oa_class_time: bodyParams.oa_class_time == undefined ? "" : bodyParams.oa_class_time,
                            oa_class_duration: bodyParams.oa_class_duration == undefined ? "" : bodyParams.oa_class_duration,
                            oa_class_apply: bodyParams.oa_class_apply == undefined ? "" : bodyParams.oa_class_apply,
                            oa_class_people: bodyParams.oa_class_people == undefined ? "" : bodyParams.oa_class_people,
                            oa_class_basics: bodyParams.oa_class_basics == undefined ? "" : bodyParams.oa_class_basics,
                            oa_class_phone: bodyParams.oa_class_phone == undefined ? "" : bodyParams.oa_class_phone,
                            oa_thumbnail: bodyParams.oa_thumbnail == undefined ? "" : bodyParams.oa_thumbnail,
                            oa_title_image_type: bodyParams.oa_title_image_type == undefined ? "" : bodyParams.oa_title_image_type,
                            activity_new_price  : bodyParams.activity_new_price,
                        }
                    },
                    function (err, data) {
                        //console.log(data);
                        //判断是否有错误信息
                        if (err) {
                            return RES.response(res, false, "活动新增失败，请重新尝试");
                        }

                        new_oaid = data;

                        cb();
                    }
                );

            },

            //添加活动扩展信息
            function(cb){
                R.SEND_HTTP(
                    req,
                    {
                        url: CORE_APIConfig.coreAPI.addOrganizationDiscountsActivityConfig,
                        method: 'POST',
                        data: {
                            dac_max_count    : bodyParams.activity_max_count,
                            dac_old_price    : bodyParams.activity_old_price,
                            dac_new_price    : bodyParams.activity_new_price,
                            dac_oaid         : new_oaid,
                            dac_address      : bodyParams.o_address == undefined ? o_address : bodyParams.o_address,
                            dac_coupon_id    : bodyParams.coupon_id == undefined ? '' : bodyParams.coupon_id,
                            dac_coupon_type  : bodyParams.coupon_type == undefined ? '' : bodyParams.coupon_type,
                            dac_prompt  : bodyParams.dac_prompt == undefined ? '' : bodyParams.dac_prompt,
                        }
                    },
                    function (err, data) {

                        //console.log(data);

                        //判断是否有错误信息
                        if (err) {
                            console.log(data);
                            return RES.response(res, false, "活动新增失败，请重新尝试");
                        }

                        cb();
                    }
                );

            },
        //添加发送代金券的记录
        function(cb){
            if(bodyParams.bc_coupon_id != undefined && bodyParams.bc_coupon_id !=''&& bodyParams.bc_coupon_id !=0){
                R.SEND_HTTP(
                    req,
                    {
                        url: CORE_APIConfig.coreAPI.addActivityCoupon,
                        method: 'POST',
                        data: {
                            ac_oid       : bodyParams.oid,                //机构id
                            ac_oaid      : new_oaid,                      //活动id
                            ac_type      : bodyParams.coupon_type,   //活动id
                            ac_fid       : bodyParams.coupon_id,      //券id
                            ac_oatype       : 2                       //活动类型
                        }
                    },
                    function (err, data) {

                        //  console.log(data);

                        //判断是否有错误信息
                        if (err) {
                            return RES.response(res, false, "活动奖励记录添加失败");
                        }

                        cb();
                    }
                );
            }else{
                cb();
            }

        },

            //增加活动内容

            function(cb){

                var contentArr = JSON.parse(bodyParams.activity_content_data);

                successCount  = contentArr.length;
                console.log(successCount);
                completeCount = 0;
                //创建添加任务
                var tasks = [];

                //console.log(contentArr);

                //循环节点列表
                contentArr.forEach(function (item, i) {
                    //创建每一个插入任务
                    tasks.push(function (cb) {

                        R.SEND_HTTP(
                            req,
                            {
                                url: CORE_APIConfig.coreAPI.addDiscountsActivityContent,
                                method: 'POST',
                                data: {
                                    dac_type      : item.type,
                                    dac_order     : i,
                                    dac_content   : item.content,
                                    dac_oaid      : new_oaid
                                }
                            },
                            function (err, data) {

                                //console.log(data);

                                //判断是否有错误信息
                                if(err) {
                                    //console.log("添加错误");
                                }else{
                                    completeCount++;
                                }
                                console.log(completeCount);
                                cb();
                            }
                        );
                    });
                });
                async.waterfall(tasks, cb);
            },

            // //判断写入结果
            // function(cb){
            //
            //     if(successCount == completeCount){
            //         cb();
            //     }else{
            //         return RES.response(res, false, "活动新增失败，请重新尝试");
            //     }
            // }

        ], function (err, result) {
            //返回最终拼接结果
            RES.response(res, true, resultData);
        }
    );
}